package com.xbongbong.paas.pojo.dto;

import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * @author WuHB
 * @date 2022/06/02 14:56
 */
@Getter
@Setter
@ToString
public class UinYunCallRecordDTO extends BaseDTO {

    /**
     * 对象id
     */
    private Long refId;

    /**
     * 对象类型，参考XbbRefTypeEnum
     */
    private Integer refType;

    /**
     * 对象名称
     */
    private String refName;

    /**
     * 微应用信息，参考AppStoreTypeEnum
     */
    private Integer moduleType;

    /**
     * 呼叫时间的时间戳，秒为单位
     */
    private Integer callTime;

    /**
     * 通话时长，秒为单位
     */
    private Integer duration;

    /**
     * 响铃时长，秒为单位
     */
    private Integer ringTime;

    /**
     * 坐席号码
     */
    private String agentPhoneNum;

    /**
     * 另一方号码
     */
    private String anotherPhoneNum;

    /**
     * 隐藏掉的另一方号码
     */
    private String hiddenPhoneNum;

    /**
     * 通话类型，0: 呼入（度言：INBOUND）；1：呼出（度言：OUTBOUND）
     */
    private Integer type;

    /**
     * 通话结果，1: 成功；0：失败（度言字段 outcome 呼叫结果，SUCCESS: 成功；FAIL：失败）；2：需要同步
     */
    private Integer result;

    /**
     * 是否已经与话务中心平台进行过同步
     */
    private Boolean isSynced;

    /**
     * 电话类别
     */
    private String code;

    /**
     * 电话备注
     */
    private String note;

    /**
     * 用于请求录音
     */
    private String callUuid;

    /**
     * 录音文件地址
     */
    private String recordUrl;

    /**
     * 通话ID
     */
    private String callId;

    /**
     * 呼叫中心实例ID
     */
    private String instanceId;

    /**
     * 挂断人：0-客户，1-员工
     */
    private Integer hangUp;

    /**
     * 是否接听：0-未接通，1-已接听
     */
    private Integer answer;

    /**
     * 通话流程JSON
     */
    private String callProcess;

    /**
     * 技能组ID
     */
    private String skillGroupIds;

    /**
     * 技能组名字
     */
    private String skillGroupNames;

    /**
     * 通话记录来源 0-呼叫中心 1-阿里云呼, 2 - 优音云呼
     * {@link com.xbongbong.saas.enums.CallCenterCallLogCallSourceEnum}
     */
    private Integer callSource;

    /**
     * 创建时间
     */
    private Integer addTime;
    /**
     * 更新时间
     */
    private Integer updateTime;

}
